package com.cn.jinl.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SalaryUserExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public SalaryUserExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andSalaryIdIsNull() {
            addCriterion("salary_id is null");
            return (Criteria) this;
        }

        public Criteria andSalaryIdIsNotNull() {
            addCriterion("salary_id is not null");
            return (Criteria) this;
        }

        public Criteria andSalaryIdEqualTo(String value) {
            addCriterion("salary_id =", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdNotEqualTo(String value) {
            addCriterion("salary_id <>", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdGreaterThan(String value) {
            addCriterion("salary_id >", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdGreaterThanOrEqualTo(String value) {
            addCriterion("salary_id >=", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdLessThan(String value) {
            addCriterion("salary_id <", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdLessThanOrEqualTo(String value) {
            addCriterion("salary_id <=", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdLike(String value) {
            addCriterion("salary_id like", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdNotLike(String value) {
            addCriterion("salary_id not like", value, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdIn(List<String> values) {
            addCriterion("salary_id in", values, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdNotIn(List<String> values) {
            addCriterion("salary_id not in", values, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdBetween(String value1, String value2) {
            addCriterion("salary_id between", value1, value2, "salaryId");
            return (Criteria) this;
        }

        public Criteria andSalaryIdNotBetween(String value1, String value2) {
            addCriterion("salary_id not between", value1, value2, "salaryId");
            return (Criteria) this;
        }

        public Criteria andDeptNameIsNull() {
            addCriterion("dept_name is null");
            return (Criteria) this;
        }

        public Criteria andDeptNameIsNotNull() {
            addCriterion("dept_name is not null");
            return (Criteria) this;
        }

        public Criteria andDeptNameEqualTo(String value) {
            addCriterion("dept_name =", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameNotEqualTo(String value) {
            addCriterion("dept_name <>", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameGreaterThan(String value) {
            addCriterion("dept_name >", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameGreaterThanOrEqualTo(String value) {
            addCriterion("dept_name >=", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameLessThan(String value) {
            addCriterion("dept_name <", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameLessThanOrEqualTo(String value) {
            addCriterion("dept_name <=", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameLike(String value) {
            addCriterion("dept_name like", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameNotLike(String value) {
            addCriterion("dept_name not like", value, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameIn(List<String> values) {
            addCriterion("dept_name in", values, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameNotIn(List<String> values) {
            addCriterion("dept_name not in", values, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameBetween(String value1, String value2) {
            addCriterion("dept_name between", value1, value2, "deptName");
            return (Criteria) this;
        }

        public Criteria andDeptNameNotBetween(String value1, String value2) {
            addCriterion("dept_name not between", value1, value2, "deptName");
            return (Criteria) this;
        }

        public Criteria andRoleNameIsNull() {
            addCriterion("role_name is null");
            return (Criteria) this;
        }

        public Criteria andRoleNameIsNotNull() {
            addCriterion("role_name is not null");
            return (Criteria) this;
        }

        public Criteria andRoleNameEqualTo(String value) {
            addCriterion("role_name =", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameNotEqualTo(String value) {
            addCriterion("role_name <>", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameGreaterThan(String value) {
            addCriterion("role_name >", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameGreaterThanOrEqualTo(String value) {
            addCriterion("role_name >=", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameLessThan(String value) {
            addCriterion("role_name <", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameLessThanOrEqualTo(String value) {
            addCriterion("role_name <=", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameLike(String value) {
            addCriterion("role_name like", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameNotLike(String value) {
            addCriterion("role_name not like", value, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameIn(List<String> values) {
            addCriterion("role_name in", values, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameNotIn(List<String> values) {
            addCriterion("role_name not in", values, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameBetween(String value1, String value2) {
            addCriterion("role_name between", value1, value2, "roleName");
            return (Criteria) this;
        }

        public Criteria andRoleNameNotBetween(String value1, String value2) {
            addCriterion("role_name not between", value1, value2, "roleName");
            return (Criteria) this;
        }

        public Criteria andUserNameIsNull() {
            addCriterion("user_name is null");
            return (Criteria) this;
        }

        public Criteria andUserNameIsNotNull() {
            addCriterion("user_name is not null");
            return (Criteria) this;
        }

        public Criteria andUserNameEqualTo(String value) {
            addCriterion("user_name =", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotEqualTo(String value) {
            addCriterion("user_name <>", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameGreaterThan(String value) {
            addCriterion("user_name >", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameGreaterThanOrEqualTo(String value) {
            addCriterion("user_name >=", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLessThan(String value) {
            addCriterion("user_name <", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLessThanOrEqualTo(String value) {
            addCriterion("user_name <=", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLike(String value) {
            addCriterion("user_name like", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotLike(String value) {
            addCriterion("user_name not like", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameIn(List<String> values) {
            addCriterion("user_name in", values, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotIn(List<String> values) {
            addCriterion("user_name not in", values, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameBetween(String value1, String value2) {
            addCriterion("user_name between", value1, value2, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotBetween(String value1, String value2) {
            addCriterion("user_name not between", value1, value2, "userName");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNull() {
            addCriterion("user_id is null");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNotNull() {
            addCriterion("user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserIdEqualTo(String value) {
            addCriterion("user_id =", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotEqualTo(String value) {
            addCriterion("user_id <>", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThan(String value) {
            addCriterion("user_id >", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("user_id >=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThan(String value) {
            addCriterion("user_id <", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThanOrEqualTo(String value) {
            addCriterion("user_id <=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLike(String value) {
            addCriterion("user_id like", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotLike(String value) {
            addCriterion("user_id not like", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdIn(List<String> values) {
            addCriterion("user_id in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotIn(List<String> values) {
            addCriterion("user_id not in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdBetween(String value1, String value2) {
            addCriterion("user_id between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotBetween(String value1, String value2) {
            addCriterion("user_id not between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andChuQinIsNull() {
            addCriterion("chu_qin is null");
            return (Criteria) this;
        }

        public Criteria andChuQinIsNotNull() {
            addCriterion("chu_qin is not null");
            return (Criteria) this;
        }

        public Criteria andChuQinEqualTo(String value) {
            addCriterion("chu_qin =", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinNotEqualTo(String value) {
            addCriterion("chu_qin <>", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinGreaterThan(String value) {
            addCriterion("chu_qin >", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinGreaterThanOrEqualTo(String value) {
            addCriterion("chu_qin >=", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinLessThan(String value) {
            addCriterion("chu_qin <", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinLessThanOrEqualTo(String value) {
            addCriterion("chu_qin <=", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinLike(String value) {
            addCriterion("chu_qin like", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinNotLike(String value) {
            addCriterion("chu_qin not like", value, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinIn(List<String> values) {
            addCriterion("chu_qin in", values, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinNotIn(List<String> values) {
            addCriterion("chu_qin not in", values, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinBetween(String value1, String value2) {
            addCriterion("chu_qin between", value1, value2, "chuQin");
            return (Criteria) this;
        }

        public Criteria andChuQinNotBetween(String value1, String value2) {
            addCriterion("chu_qin not between", value1, value2, "chuQin");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryIsNull() {
            addCriterion("base_salary is null");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryIsNotNull() {
            addCriterion("base_salary is not null");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryEqualTo(String value) {
            addCriterion("base_salary =", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryNotEqualTo(String value) {
            addCriterion("base_salary <>", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryGreaterThan(String value) {
            addCriterion("base_salary >", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("base_salary >=", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryLessThan(String value) {
            addCriterion("base_salary <", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryLessThanOrEqualTo(String value) {
            addCriterion("base_salary <=", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryLike(String value) {
            addCriterion("base_salary like", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryNotLike(String value) {
            addCriterion("base_salary not like", value, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryIn(List<String> values) {
            addCriterion("base_salary in", values, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryNotIn(List<String> values) {
            addCriterion("base_salary not in", values, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryBetween(String value1, String value2) {
            addCriterion("base_salary between", value1, value2, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andBaseSalaryNotBetween(String value1, String value2) {
            addCriterion("base_salary not between", value1, value2, "baseSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryIsNull() {
            addCriterion("jijian_salary is null");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryIsNotNull() {
            addCriterion("jijian_salary is not null");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryEqualTo(String value) {
            addCriterion("jijian_salary =", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryNotEqualTo(String value) {
            addCriterion("jijian_salary <>", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryGreaterThan(String value) {
            addCriterion("jijian_salary >", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("jijian_salary >=", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryLessThan(String value) {
            addCriterion("jijian_salary <", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryLessThanOrEqualTo(String value) {
            addCriterion("jijian_salary <=", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryLike(String value) {
            addCriterion("jijian_salary like", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryNotLike(String value) {
            addCriterion("jijian_salary not like", value, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryIn(List<String> values) {
            addCriterion("jijian_salary in", values, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryNotIn(List<String> values) {
            addCriterion("jijian_salary not in", values, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryBetween(String value1, String value2) {
            addCriterion("jijian_salary between", value1, value2, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andJijianSalaryNotBetween(String value1, String value2) {
            addCriterion("jijian_salary not between", value1, value2, "jijianSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryIsNull() {
            addCriterion("gonglin_salary is null");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryIsNotNull() {
            addCriterion("gonglin_salary is not null");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryEqualTo(String value) {
            addCriterion("gonglin_salary =", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryNotEqualTo(String value) {
            addCriterion("gonglin_salary <>", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryGreaterThan(String value) {
            addCriterion("gonglin_salary >", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("gonglin_salary >=", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryLessThan(String value) {
            addCriterion("gonglin_salary <", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryLessThanOrEqualTo(String value) {
            addCriterion("gonglin_salary <=", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryLike(String value) {
            addCriterion("gonglin_salary like", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryNotLike(String value) {
            addCriterion("gonglin_salary not like", value, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryIn(List<String> values) {
            addCriterion("gonglin_salary in", values, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryNotIn(List<String> values) {
            addCriterion("gonglin_salary not in", values, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryBetween(String value1, String value2) {
            addCriterion("gonglin_salary between", value1, value2, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andGonglinSalaryNotBetween(String value1, String value2) {
            addCriterion("gonglin_salary not between", value1, value2, "gonglinSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryIsNull() {
            addCriterion("jineng_salary is null");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryIsNotNull() {
            addCriterion("jineng_salary is not null");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryEqualTo(String value) {
            addCriterion("jineng_salary =", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryNotEqualTo(String value) {
            addCriterion("jineng_salary <>", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryGreaterThan(String value) {
            addCriterion("jineng_salary >", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("jineng_salary >=", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryLessThan(String value) {
            addCriterion("jineng_salary <", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryLessThanOrEqualTo(String value) {
            addCriterion("jineng_salary <=", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryLike(String value) {
            addCriterion("jineng_salary like", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryNotLike(String value) {
            addCriterion("jineng_salary not like", value, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryIn(List<String> values) {
            addCriterion("jineng_salary in", values, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryNotIn(List<String> values) {
            addCriterion("jineng_salary not in", values, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryBetween(String value1, String value2) {
            addCriterion("jineng_salary between", value1, value2, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andJinengSalaryNotBetween(String value1, String value2) {
            addCriterion("jineng_salary not between", value1, value2, "jinengSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryIsNull() {
            addCriterion("baoxian_salary is null");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryIsNotNull() {
            addCriterion("baoxian_salary is not null");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryEqualTo(String value) {
            addCriterion("baoxian_salary =", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryNotEqualTo(String value) {
            addCriterion("baoxian_salary <>", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryGreaterThan(String value) {
            addCriterion("baoxian_salary >", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("baoxian_salary >=", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryLessThan(String value) {
            addCriterion("baoxian_salary <", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryLessThanOrEqualTo(String value) {
            addCriterion("baoxian_salary <=", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryLike(String value) {
            addCriterion("baoxian_salary like", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryNotLike(String value) {
            addCriterion("baoxian_salary not like", value, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryIn(List<String> values) {
            addCriterion("baoxian_salary in", values, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryNotIn(List<String> values) {
            addCriterion("baoxian_salary not in", values, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryBetween(String value1, String value2) {
            addCriterion("baoxian_salary between", value1, value2, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andBaoxianSalaryNotBetween(String value1, String value2) {
            addCriterion("baoxian_salary not between", value1, value2, "baoxianSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryIsNull() {
            addCriterion("manqin_salary is null");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryIsNotNull() {
            addCriterion("manqin_salary is not null");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryEqualTo(String value) {
            addCriterion("manqin_salary =", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryNotEqualTo(String value) {
            addCriterion("manqin_salary <>", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryGreaterThan(String value) {
            addCriterion("manqin_salary >", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("manqin_salary >=", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryLessThan(String value) {
            addCriterion("manqin_salary <", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryLessThanOrEqualTo(String value) {
            addCriterion("manqin_salary <=", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryLike(String value) {
            addCriterion("manqin_salary like", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryNotLike(String value) {
            addCriterion("manqin_salary not like", value, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryIn(List<String> values) {
            addCriterion("manqin_salary in", values, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryNotIn(List<String> values) {
            addCriterion("manqin_salary not in", values, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryBetween(String value1, String value2) {
            addCriterion("manqin_salary between", value1, value2, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andManqinSalaryNotBetween(String value1, String value2) {
            addCriterion("manqin_salary not between", value1, value2, "manqinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryIsNull() {
            addCriterion("jiangjin_salary is null");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryIsNotNull() {
            addCriterion("jiangjin_salary is not null");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryEqualTo(String value) {
            addCriterion("jiangjin_salary =", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryNotEqualTo(String value) {
            addCriterion("jiangjin_salary <>", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryGreaterThan(String value) {
            addCriterion("jiangjin_salary >", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("jiangjin_salary >=", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryLessThan(String value) {
            addCriterion("jiangjin_salary <", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryLessThanOrEqualTo(String value) {
            addCriterion("jiangjin_salary <=", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryLike(String value) {
            addCriterion("jiangjin_salary like", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryNotLike(String value) {
            addCriterion("jiangjin_salary not like", value, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryIn(List<String> values) {
            addCriterion("jiangjin_salary in", values, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryNotIn(List<String> values) {
            addCriterion("jiangjin_salary not in", values, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryBetween(String value1, String value2) {
            addCriterion("jiangjin_salary between", value1, value2, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andJiangjinSalaryNotBetween(String value1, String value2) {
            addCriterion("jiangjin_salary not between", value1, value2, "jiangjinSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryIsNull() {
            addCriterion("other_salary is null");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryIsNotNull() {
            addCriterion("other_salary is not null");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryEqualTo(String value) {
            addCriterion("other_salary =", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryNotEqualTo(String value) {
            addCriterion("other_salary <>", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryGreaterThan(String value) {
            addCriterion("other_salary >", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("other_salary >=", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryLessThan(String value) {
            addCriterion("other_salary <", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryLessThanOrEqualTo(String value) {
            addCriterion("other_salary <=", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryLike(String value) {
            addCriterion("other_salary like", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryNotLike(String value) {
            addCriterion("other_salary not like", value, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryIn(List<String> values) {
            addCriterion("other_salary in", values, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryNotIn(List<String> values) {
            addCriterion("other_salary not in", values, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryBetween(String value1, String value2) {
            addCriterion("other_salary between", value1, value2, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andOtherSalaryNotBetween(String value1, String value2) {
            addCriterion("other_salary not between", value1, value2, "otherSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryIsNull() {
            addCriterion("wzhang_salary is null");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryIsNotNull() {
            addCriterion("wzhang_salary is not null");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryEqualTo(String value) {
            addCriterion("wzhang_salary =", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryNotEqualTo(String value) {
            addCriterion("wzhang_salary <>", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryGreaterThan(String value) {
            addCriterion("wzhang_salary >", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("wzhang_salary >=", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryLessThan(String value) {
            addCriterion("wzhang_salary <", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryLessThanOrEqualTo(String value) {
            addCriterion("wzhang_salary <=", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryLike(String value) {
            addCriterion("wzhang_salary like", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryNotLike(String value) {
            addCriterion("wzhang_salary not like", value, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryIn(List<String> values) {
            addCriterion("wzhang_salary in", values, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryNotIn(List<String> values) {
            addCriterion("wzhang_salary not in", values, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryBetween(String value1, String value2) {
            addCriterion("wzhang_salary between", value1, value2, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andWzhangSalaryNotBetween(String value1, String value2) {
            addCriterion("wzhang_salary not between", value1, value2, "wzhangSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryIsNull() {
            addCriterion("bad_salary is null");
            return (Criteria) this;
        }

        public Criteria andBadSalaryIsNotNull() {
            addCriterion("bad_salary is not null");
            return (Criteria) this;
        }

        public Criteria andBadSalaryEqualTo(String value) {
            addCriterion("bad_salary =", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryNotEqualTo(String value) {
            addCriterion("bad_salary <>", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryGreaterThan(String value) {
            addCriterion("bad_salary >", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("bad_salary >=", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryLessThan(String value) {
            addCriterion("bad_salary <", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryLessThanOrEqualTo(String value) {
            addCriterion("bad_salary <=", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryLike(String value) {
            addCriterion("bad_salary like", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryNotLike(String value) {
            addCriterion("bad_salary not like", value, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryIn(List<String> values) {
            addCriterion("bad_salary in", values, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryNotIn(List<String> values) {
            addCriterion("bad_salary not in", values, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryBetween(String value1, String value2) {
            addCriterion("bad_salary between", value1, value2, "badSalary");
            return (Criteria) this;
        }

        public Criteria andBadSalaryNotBetween(String value1, String value2) {
            addCriterion("bad_salary not between", value1, value2, "badSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryIsNull() {
            addCriterion("daikou_salary is null");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryIsNotNull() {
            addCriterion("daikou_salary is not null");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryEqualTo(String value) {
            addCriterion("daikou_salary =", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryNotEqualTo(String value) {
            addCriterion("daikou_salary <>", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryGreaterThan(String value) {
            addCriterion("daikou_salary >", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("daikou_salary >=", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryLessThan(String value) {
            addCriterion("daikou_salary <", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryLessThanOrEqualTo(String value) {
            addCriterion("daikou_salary <=", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryLike(String value) {
            addCriterion("daikou_salary like", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryNotLike(String value) {
            addCriterion("daikou_salary not like", value, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryIn(List<String> values) {
            addCriterion("daikou_salary in", values, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryNotIn(List<String> values) {
            addCriterion("daikou_salary not in", values, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryBetween(String value1, String value2) {
            addCriterion("daikou_salary between", value1, value2, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andDaikouSalaryNotBetween(String value1, String value2) {
            addCriterion("daikou_salary not between", value1, value2, "daikouSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryIsNull() {
            addCriterion("power_salary is null");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryIsNotNull() {
            addCriterion("power_salary is not null");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryEqualTo(String value) {
            addCriterion("power_salary =", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryNotEqualTo(String value) {
            addCriterion("power_salary <>", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryGreaterThan(String value) {
            addCriterion("power_salary >", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("power_salary >=", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryLessThan(String value) {
            addCriterion("power_salary <", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryLessThanOrEqualTo(String value) {
            addCriterion("power_salary <=", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryLike(String value) {
            addCriterion("power_salary like", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryNotLike(String value) {
            addCriterion("power_salary not like", value, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryIn(List<String> values) {
            addCriterion("power_salary in", values, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryNotIn(List<String> values) {
            addCriterion("power_salary not in", values, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryBetween(String value1, String value2) {
            addCriterion("power_salary between", value1, value2, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andPowerSalaryNotBetween(String value1, String value2) {
            addCriterion("power_salary not between", value1, value2, "powerSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryIsNull() {
            addCriterion("actual_salary is null");
            return (Criteria) this;
        }

        public Criteria andActualSalaryIsNotNull() {
            addCriterion("actual_salary is not null");
            return (Criteria) this;
        }

        public Criteria andActualSalaryEqualTo(String value) {
            addCriterion("actual_salary =", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryNotEqualTo(String value) {
            addCriterion("actual_salary <>", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryGreaterThan(String value) {
            addCriterion("actual_salary >", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryGreaterThanOrEqualTo(String value) {
            addCriterion("actual_salary >=", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryLessThan(String value) {
            addCriterion("actual_salary <", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryLessThanOrEqualTo(String value) {
            addCriterion("actual_salary <=", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryLike(String value) {
            addCriterion("actual_salary like", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryNotLike(String value) {
            addCriterion("actual_salary not like", value, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryIn(List<String> values) {
            addCriterion("actual_salary in", values, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryNotIn(List<String> values) {
            addCriterion("actual_salary not in", values, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryBetween(String value1, String value2) {
            addCriterion("actual_salary between", value1, value2, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andActualSalaryNotBetween(String value1, String value2) {
            addCriterion("actual_salary not between", value1, value2, "actualSalary");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}